package Interfaces;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import clases.Estudiante;

public class fmrMenu extends JFrame implements ActionListener{
	
	    private static final long serialVersionUID = 1L;
		private JMenuBar jMenuBarSec;
		private JMenu jMenu1;
		private JMenu jMenuMos;
		private JMenu jMenuLis;
		private JMenu jMenuEst;
		private JMenuItem jMenuItemProfesor;
		private JMenuItem jMenuItemApl;
		private JMenuItem jMenuItemPro;
		private JMenuItem jMenuItemApliEva;
	
		private JMenuItem jMenuItemApr;
		private JMenuItem jMenuItemLisPorNot;
		private JMenuItem jMenuItemLisPorCed;
		private JMenuItem jMenuItemEst;
		
        public fmrMenu(){
        	           setTitle("Control de evaluacion");
    		           setSize(435,150);
    		       	   setLocation(300,300);
		               jMenuBarSec = new JMenuBar();
					
						jMenu1 = new JMenu();
						jMenuBarSec.add(jMenu1);
						jMenu1.setText("Profesor");
						
							jMenuItemProfesor = new JMenuItem();
							jMenu1.add(jMenuItemProfesor);
						
							jMenuItemApliEva = new JMenuItem();
							jMenu1.add(jMenuItemApliEva);
							
							jMenuItemProfesor.setText("Profesor");
							jMenuItemApliEva.setText("Aplicar Evaluacion");
						
				
						jMenuEst = new JMenu();
						jMenuBarSec.add(jMenuEst);
						jMenuEst.setText("Estudiante");
	
							jMenuItemEst = new JMenuItem();
							jMenuEst.add(jMenuItemEst);
					
							jMenuItemEst.setText("Estudiante");
				
						jMenuLis = new JMenu();
						jMenuBarSec.add(jMenuLis);
						jMenuLis.setText("Listados");
					
							jMenuItemLisPorCed = new JMenuItem();
							jMenuLis.add(jMenuItemLisPorCed);
						
							jMenuItemLisPorCed.setText("Ordenados por Cedula");
					
							jMenuItemLisPorNot = new JMenuItem();
							jMenuLis.add(jMenuItemLisPorNot);
					
							jMenuItemLisPorNot.setText("Ordenados por Nota Final");
							
							jMenuItemApr = new JMenuItem();
							jMenuLis.add(jMenuItemApr);
						
							jMenuItemApr.setText("Aprobados");
						
						
							jMenuItemApl = new JMenuItem();
							jMenuLis.add(jMenuItemApl);
						
							jMenuItemApl.setText("Aplazados");
						
					
					
						jMenuMos = new JMenu();
						jMenuBarSec.add(jMenuMos);
						jMenuMos.setText("Mostrar");
						
							jMenuItemPro = new JMenuItem();
							jMenuMos.add(jMenuItemPro);
						
							jMenuItemPro.setText("Promedio");
							setJMenuBar(jMenuBarSec);
						
							jMenuItemProfesor.addActionListener(this);
							jMenuItemEst.addActionListener(this);
							jMenuItemLisPorCed.addActionListener(this);
							jMenuItemLisPorNot.addActionListener(this);
							jMenuItemApr.addActionListener(this);
							jMenuItemApl.addActionListener(this);
							jMenuItemApliEva.addActionListener(this);
							jMenuItemPro.addActionListener(this);
							
	
}
		public void actionPerformed(ActionEvent accion) {
			String nombre=accion.getActionCommand();
			if(nombre.equals("Estudiante")){
				frmEstudiante frmestudiante=new frmEstudiante();
				frmestudiante.btnEliminar.setEnabled(false);
				frmestudiante.btnIncluir.setEnabled(false);
				frmestudiante.btnLimpiar.setEnabled(false);
				frmestudiante.txtApellido.setEnabled(false);
				frmestudiante.txtNombre.setEnabled(false);
				frmestudiante.setVisible(true);
				
			}
			if(nombre.equals("Ordenados por Cedula")){
				Vector<Estudiante> estudiantes;
				estudiantes=frmPrincipal.seccion.getEstudiantes();
				if(estudiantes.size()!=0){
				estudiantes=frmPrincipal.seccion.ListarEstCed();
				frmListados frmlisOrdPorCed= new frmListados(estudiantes,"Estudiantes por cedula");
				frmlisOrdPorCed.setVisible(true);
				}
				else
				    JOptionPane.showMessageDialog(null,"No existen estudiantes en la seccion","Listado de estudiantes por cedula", 
									JOptionPane.INFORMATION_MESSAGE);
		}
			if(nombre.equals("Ordenados por Nota Final")){
				Vector<Estudiante> estudiantes;
				estudiantes=frmPrincipal.seccion.getEstudiantes();
				if(estudiantes.size()!=0){
				estudiantes=frmPrincipal.seccion.ListarEstNotFin();
				frmListados frmlisOrdPorCed= new frmListados(estudiantes,"Ordenados por Nota Final");
				frmlisOrdPorCed.setVisible(true);
				}
				else
				    JOptionPane.showMessageDialog(null,"No existen estudiantes en la seccion","Listado de estudiantes por nota final", 
									JOptionPane.INFORMATION_MESSAGE);
		
		}
			if(nombre.equals("Aprobados")){
				Vector<Estudiante> estudiantes;
				estudiantes=frmPrincipal.seccion.getEstudiantes();
				if(estudiantes.size()!=0){
				estudiantes=frmPrincipal.seccion.ListarEstApro();
				if(estudiantes.size()!=0){
				frmListados frmlisOrdPorCed= new frmListados(estudiantes,"Estudiantes aprobados");
				frmlisOrdPorCed.setVisible(true);}
				else
					 JOptionPane.showMessageDialog(null,"No hay estudiantes aprobados","Listado de estudiantes aplazados", 
								JOptionPane.INFORMATION_MESSAGE);
				}
				else
				    JOptionPane.showMessageDialog(null,"No existen estudiantes en la seccion","Listado de estudiantes aprobados", 
									JOptionPane.INFORMATION_MESSAGE);
		}
			if(nombre.equals("Aplazados")){
				Vector<Estudiante> estudiantes;
				estudiantes=frmPrincipal.seccion.getEstudiantes();
				if(estudiantes.size()!=0){
				estudiantes=frmPrincipal.seccion.ListarEstApla();
				if(estudiantes.size()!=0){
				frmListados frmlisOrdPorCed= new frmListados(estudiantes,"Estudiantes aplazados");
				frmlisOrdPorCed.setVisible(true);}
				else
					 JOptionPane.showMessageDialog(null,"No hay estudiantes aplazados","Listado de estudiantes aplazados", 
								JOptionPane.INFORMATION_MESSAGE);
				}
				else
				    JOptionPane.showMessageDialog(null,"No existen estudiantes en la seccion","Listado de estudiantes aplazados", 
									JOptionPane.INFORMATION_MESSAGE);
		
		}
			if(nombre.equals("Aplicar Evaluacion")){
				if(!frmPrincipal.seccion.getProfesor().getCedula().equals("null")){
				Vector<Estudiante> estudiantes;
				estudiantes=frmPrincipal.seccion.getEstudiantes();
				if(estudiantes.size()!=0){
				frmPrincipal.seccion.AplicarEvaluaciones();
				JOptionPane.showMessageDialog(null,"La seccion ha sido evaluada exitosamente","Listado de estudiantes aplazados", 
						JOptionPane.INFORMATION_MESSAGE);
				jMenuItemApliEva.setEnabled(false);
				jMenuItemEst.setEnabled(false);
				jMenuItemProfesor.setEnabled(false);
			     }
				else
				    JOptionPane.showMessageDialog(null,"No existen estudiantes en la seccion","Aplicar evaluaci�n", 
									JOptionPane.INFORMATION_MESSAGE);
			     }
					else
					JOptionPane.showMessageDialog(null,"la seccion no tiene profesor asignado","Aplicar evaluacion", 
								JOptionPane.INFORMATION_MESSAGE);
			}
			if(nombre.equals("Promedio")){
			frmPromedio fpromedio=new frmPromedio();
			float promedio;
			promedio=frmPrincipal.seccion.MostraPromedio()/3;
			fpromedio.txtPromedio.setText(String.valueOf(promedio));
			fpromedio.setVisible(true);
		}
			if(nombre.equals("Profesor")){
				frmProfesor frmprofesor=new frmProfesor();
				frmprofesor.setVisible(true);
				jMenuItemProfesor.setEnabled(false);
			}
			
		}
}
